﻿/*======================================================================
== Copyright : BlueCurve (c)
== Licence   : Gnu/GPL v2.x
== Author    : Teddy Albina
== Email     : bluecurveteam@gmail.com
== Web site  : http://www.codeplex.com/BlueCurve
========================================================================*/
using System.Collections.Generic;
using System.Runtime.Serialization;
using System;

namespace BlueCurve.SearchContract
{
    /// <summary>
    /// Données retourné lors d'une recherche
    /// </summary>
    [DataContract]
    public class SearchData
    {
        /// <summary>
        /// Titre du document
        /// </summary>
        [DataMember]
        public string Title { get; set; }
        /// <summary>
        /// Description
        /// </summary>
        [DataMember]
        public string Description { get; set; }
        /// <summary>
        /// Url du document
        /// </summary>
        [DataMember]
        public string Url { get; set; }
        /// <summary>
        /// Taille du document
        /// </summary>
        [DataMember]
        public string Size { get; set; }
        /// <summary>
        /// Type de document
        /// </summary>
        [DataMember]
        public string Type { get; set; }
        /// <summary>
        /// Chemin vers la miniature du fichier
        /// </summary>
        [DataMember(EmitDefaultValue=true)]
        public string Thumbnail { get; set; }
        /// <summary>
        /// Flux rss
        /// </summary>
        [DataMember]
        public List<string> Rss = new List<string>();
        /// <summary>
        /// Chemin vers le fichier en cache
        /// </summary>
        [DataMember(EmitDefaultValue=true)]
        public string Cache { get; set; }
        /// <summary>
        /// Valeur du document dans l'index
        /// </summary>
        [DataMember(EmitDefaultValue=true)]
        public float IndexValue { get; set; }
        /// <summary>
        /// Id du document dans l'index fulltext
        /// </summary>
        [DataMember]
        public int Indexid { get; set; }
        /// <summary>
        /// Langue dans laquelle est rédigé le document
        /// </summary>
        [DataMember]
        public string Language { get; set; }
        /// <summary>
        /// Domain de base de l'URI du document valable
        /// uniquement pour les documents provenant du web
        /// </summary>
        [DataMember]
        public string Domain { get; set; }
        /// <summary>
        /// Permets de savoir si le document
        /// </summary>
        [DataMember(EmitDefaultValue = true)]
        public bool IsDeskTop { get; set; }
        /// <summary>
        /// Date de création du document
        /// </summary>
        [DataMember(EmitDefaultValue = true)]
        public DateTime CreationDate { get; set; }
        /// <summary>
        /// Date à laquelle à été indexé le document
        /// </summary>
        [DataMember(EmitDefaultValue = true)]
        public DateTime Date { get; set; }
    }
}